#pragma once

#include "RefCounted.h"
#include "GetEphemInterface.h"
#include "OrbitElemTransform.h"

class CAsteroidOrbitParam: public CRefCountedAdapterBase
{
public:
	typedef CRefCounted<CAsteroidOrbitParam> Ptr;
	typedef list<Ptr> ListPtr;
public:
	CAsteroidOrbitParam(double	dVariousParam);
	virtual ~CAsteroidOrbitParam(void);

	double GetVariousParam() const;
	void SetVariousParam(double dParam);

	const CAsteroidOrbitParam & operator = (const SBody &body);
	const CAsteroidOrbitParam & operator = (const COrbitElemTransform::Elements & Elem);
	operator const SBody &() const;
	operator const COrbitElemTransform::Elements & () const;
protected:
	SBody	m_Body;
	COrbitElemTransform::Elements	m_Elem;

public:
	double	m_dStart;
	double	m_dEnd;
protected:
	double	m_dVariousParam;
};

